package com.zr.service;

import com.zr.model.Leave;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public interface HRServicedtp {
	/**
	 * 注册新员工
	 * @param ename 姓名
	 * @param eage	年龄
	 * @param esex	性别
	 * @param enation	民族
	 * @param eaddress	地址
	 * @param eeducation	学历
	 * @param eintime	入职时间	
	 * @param eposition	职位
	 * @param eremark	备注
	 * @param did	部门编号
	 * @return 添加成功（true）或者失败(false)
	 */
	public int addUser(String ename,int eage,String esex,String enation,String eidcard,String eaddress,String eeducation,String eintime,String eposition,String eremark,int did,String ephone);
	/**
	 * 获取部门下拉列表框中的部门名
	 * @return 所有部门名（JSONArray）
	 */
	public JSONArray findSelectDid();
	/**
	 * 通过页码和每页行数获取员工信息
	 * @return
	 */
	public JSONObject findEmpls(int page,int rows,String name);
	/**
	 * 
	 * @param departement 部门
	 * @param position	职位
	 * @return true(成功) false(失败)
	 */
	public boolean changeJob(int eid,String departement,String position);
	/**
	 * 通过当前页码和显示条数获取请假员工信息
	 * @param page
	 * @param rows
	 * @return
	 */
	public JSONObject findLeaves(int page,int rows,String state);
	/**
	 * 通过员工编号删除员工
	 * @param eid 员工编号
	 * @return true(成功)false(失败)
	 */
	public boolean delEmpl(int eid);
	/**
	 * 
	 * @param id 请假单号
	 * @return 员工请假申请信息
	 */
	public JSONObject findListById(int id);
	/**
	 * 
	 * @param id 请假号
	 * @param opinion	审核意见（同意or不同意）
	 * @param retime 审核时间
	 * @param remake 备注
	 * @return true(成功)false(失败)
	 */
	public boolean subVacation(int id,String opinion,String retime,String remake);
	/**
	 * 获取所有员工信息
	 * @return jsonobject格式员工信息
	 */
	public JSONObject findAllData(int page,int rows,String name);
	/**
	 * 
	 * @param eid 员工id
	 * @param mname 修改的姓名
	 * @param mage 修改后的年龄
	 * @param meducation 修改后学历
	 * @param mdizi
	 * @param mphone
	 * @return
	 */
	public boolean editEmpl(int eid,String mname,int mage,String meducation,String mdizi,String mphone);
	/**
	 * lzsh
	 * @param state 审核状态 
	 * @param page	当前页码
	 * @param rows 信息条数
	 * @return 当前页显示信息（jsonobject）
	 */
	public JSONObject  findResign(String state,int page,int rows);
	/**
	 * 
	 * @param id 离职单号
	 * @return 离职数据
	 */
	public JSONObject findResignData(int id);
	/**
	 * 
	 * @param id 离职单号
	 * @param opinion 审核意见
	 * @param retime 审核时间
	 * @param remark 备注
	 * @return true(提交成功)false（提交失败）
	 */
	public boolean checkResign(int id,String opinion,String retime,String remark);
	

}
